#pragma once

class EntCometFire : public EntBase 
{
public:
	//=== vars ===//
	irr::scene::IParticleSystemSceneNode *			m_poParticles;

	//=== constructor ===//
	EntCometFire( VxIrrBase * poIrrBase, const EntSpawnData& oEntSpawnData );

	//=== methods ===//
	//! override EntBase
	//! hande collision with another object
	//! return non zero if caller should not process any more contact points
	RCODE  HandleCollision( EntBase * poOtherEntity, const btPersistentManifold * poContactManifold, float f32NormalScale );

	//! called once per second
	void		OncePerSecond( void );
	//! handle changes when power level goes up
	void		OnPowerLevelUp( S32 s32PowerLevel, S32 s32PowerUpTTL );
	//! handle changes when power level goes down
	void		OnPowerLevelDown( void );

	//! rebuild particle system
	void		RebuildParticleSystem( void );
	//! override EntBase
	//! return true is scene node is this entities or any children like particle system etc
	BOOL		IsMySceneNode( irr::scene::ISceneNode * poNode );



};


